package com.hyb.algorithm.data.struct.list;

/**
 * @Author: huyanbing
 * @Date: 2021/9/23 11:42 上午
 *
 * 88. 合并两个有序数组
 * https://leetcode-cn.com/problems/merge-sorted-array/
 *
 *
 */
public class MergeSortedArray {


    public void merge(int[] nums1, int m, int[] nums2, int n) {

        int p1=m-1; int p2=n-1;

        int tail=m+n-1;

        //倒排 不会出现覆盖的情况
        while(p1>=0||p2>=0){
            if(p1==-1){
                nums1[tail--]=nums2[p2--];
            }else if(p2==-1){
                nums1[tail--]=nums1[p1--];
            }else if(nums1[p1]>=nums2[p2]){
                nums1[tail--]=nums1[p1--];
            }else{
                nums1[tail--]=nums2[p2--];
            }
        }

    }
}
